package com.probiz.estore.common.model.product;

import java.util.ArrayList;
import java.util.List;

import com.probiz.estore.Constants;
import com.probiz.estore.common.model.attribute.ProductAttrValue;
import com.probiz.estore.common.model.product.base.ProductAttGroupTbl;

/**
 * Model class for ProductAttGroup. Add not database mapped fileds in this class.
 * 商品属性组
 */
public class ProductAttGroup extends ProductAttGroupTbl {

    /**
     * 辅助前台显示自定义属性
     */
    private List<ProductAttrValue> productAttrValues;

    /**
     * Default Empty Constructor for class ProductAttGroup
     */
    public ProductAttGroup() {
        super();
    }


    /**
     * Default Key Fields Constructor for class ProductAttGroup
     *
     * @param in_productAttGroupId 属性组id
     */
    public ProductAttGroup(Integer in_productAttGroupId) {
        super(in_productAttGroupId);
    }


    public List<ProductAttrValue> getProductAttrValues() {
        return productAttrValues;
    }


    public void setProductAttrValues(List<ProductAttrValue> productAttrValues) {
        this.productAttrValues = productAttrValues;
	}
    
    public List<ProductAttGroupItem> getActiveProductAttGroupItems() {
		List<ProductAttGroupItem> activeproductAttGroupItems = new ArrayList<ProductAttGroupItem>();
		for(ProductAttGroupItem item:getProductAttGroupItems()){
			if(item.getAttribute().getStatus().shortValue() == Constants.FLAG_TRUE.shortValue())
			activeproductAttGroupItems.add(item);
		}
		return activeproductAttGroupItems;
	}
	
	public List<ProductAttrValue> getActiveProductAttrValues() {
		List<ProductAttrValue> activeProductAttrValues = new ArrayList<ProductAttrValue>();
		for(ProductAttrValue attrValue:getProductAttrValues()){
			if(attrValue.getAttribute().getStatus().shortValue() == Constants.FLAG_TRUE.shortValue())
				activeProductAttrValues.add(attrValue);
		}
		return activeProductAttrValues;
	}
	
	public boolean equals(Object object){
		return super.equals(object);
	}
	public int hashCode() {
		return super.hashCode();
	}


}
